package com.ly.heart.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.experimental.Accessors;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ly.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 采购订单关联付款计划对象 erp_order_payment_plan
 *
 * @author cxl
 * @date 2024-06-23
 */
@TableName ("erp_order_payment_plan")
@ApiModel (value = "采购订单关联付款计划", description = "采购订单关联付款计划")
@Data
@Accessors(chain = true)
public class OrderPaymentPlanEntity{

        /** 主键id */
        @TableId (type = IdType.INPUT)
        private String id;

        /** 采购订单id */
        @ApiModelProperty ("采购订单id")
        @TableField ("order_id")
        @Excel (name = "采购订单id")
        private String orderId;

        /** 供应商id */
        @ApiModelProperty ("供应商id")
        @TableField ("supplier_id")
        @Excel (name = "供应商id")
        private String supplierId;

        /** 应付日期 */
        @ApiModelProperty ("应付日期")
        @TableField ("payable_time")
        @JsonFormat (pattern = "yyyy-MM-dd")
        @Excel (name = "应付日期", width = 30, dateFormat = "yyyy-MM-dd")
        private Date payableTime;

        /** 应付比例 */
        @ApiModelProperty ("应付比例")
        @TableField ("payable_rate")
        @Excel (name = "应付比例")
        private String payableRate;

        /** 应付金额 */
        @ApiModelProperty ("应付金额")
        @TableField ("payable_money")
        @Excel (name = "应付金额")
        private String payableMoney;

        /** 是否预付 */
        @ApiModelProperty ("是否预付")
        @TableField ("is_prepaid")
        @Excel (name = "是否预付")
        private Boolean isPrepaid;

        /** 预付单号 */
        @ApiModelProperty ("预付单号")
        @TableField ("prepaid_code")
        @Excel (name = "预付单号")
        private String prepaidCode;

        /** 单次预付额度 */
        @ApiModelProperty ("单次预付额度")
        @TableField ("single_prepaid_limit")
        @Excel (name = "单次预付额度")
        private String singlePrepaidLimit;

        /** 实际预付金额 */
        @ApiModelProperty ("实际预付金额")
        @TableField ("actual_prepaid_amount")
        @Excel (name = "实际预付金额")
        private String actualPrepaidAmount;

        /** 付款关联金额 */
        @ApiModelProperty ("付款关联金额")
        @TableField ("payment_related_amount")
        @Excel (name = "付款关联金额")
        private String paymentRelatedAmount;

        /** 备注 */
        @ApiModelProperty ("备注")
        @TableField ("remark")
        @Excel (name = "备注")
        private String remark;

        /** 录入人 */
        @ApiModelProperty ("录入人")
        @TableField ("user_id")
        @Excel (name = "录入人")
        private String userId;

        @ApiModelProperty ("创建时间")
        @JsonFormat ( pattern = "yyyy-MM-dd HH:mm:ss" )
        @TableField ("create_time")
        private Date createTime;

        /** 更新时间 */
        @ApiModelProperty ("更新时间")
        @TableField ("change_time")
        @JsonFormat (pattern = "yyyy-MM-dd")
        @Excel (name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
        private Date changeTime;

        @ApiModelProperty ("逻辑删除")
        @TableField ("is_used")
        @Excel (name = "逻辑删除")
        private Integer isUsed;



}
